home *** CD-ROM | disk | FTP | other *** search
- /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1984. */
- /* $Header: cell.h,v 2.0 84/06/18 15:46:34 guido Exp $ */
-
- /*
- * B editor -- Definitions for linked lists of screen lines, baptized `cells'.
- * (This is NOT an abstract data type!)
- */
-
- struct cell {
- struct cell *c_link;
- node c_data;
- short c_onscreen;
- short c_oldindent;
- short c_newindent;
- short c_length;
- char c_oldvhole;
- char c_newvhole; /* Yes if this line contains a `vhole' */
- char c_oldfocus;
- char c_newfocus; /* Yes if this line contains underlining */
- };
-
- typedef struct cell cell;
-
- #define Cnil ((cell*) NULL)
-
- #define Nowhere (-9999)
-
- #define SpaceRound(x) ((indent + (x) + llength - 1) / llength)
- #define Space(p) \
- SpaceRound((p)->c_length + (p)->c_newindent + (p)->c_newvhole)
- #define Oldspace(p) \
- SpaceRound((p)->c_length + (p)->c_newindent + (p)->c_newvhole)
-
- cell *replist();
- cell *build();
-
- extern int llength;
- extern int winheight;
- extern int indent;
-